clear all;
close all;
clc;

functions={'Hartmann'
}
methods={'AACA'
'ACO'
'API'
'CACO'
'CMAES'
'DACO'
'DifferentialEvolution'
'HGAPSO'
'OrthogonalSearch'
'PALDifferentialEvolution'
'PBIL'
'Powell'
'PSO'
'QuasiNewton'
'Random'
'SADE'
'SteepestDescent'
'PureCMAES'
}


colors=hsv(size(methods,1));


HartmannBest=csvread('HartmannBest.csv');
HartmannWorst=csvread('HartmannWorst.csv');


HartmannBest(1,find(HartmannBest(1,:)==0))=-Inf;
HartmannWorst(1,find(HartmannWorst(1,:)==0))=-Inf;
HartmannBest(2,find(HartmannBest(2,:)==0))=-Inf;
HartmannWorst(2,find(HartmannWorst(2,:)==0))=-Inf;
HartmannBest(3,find(HartmannBest(3,:)==0))=-Inf;
HartmannWorst(3,find(HartmannWorst(3,:)==0))=-Inf;
HartmannBest(4,find(HartmannBest(4,:)==0))=-Inf;
HartmannWorst(4,find(HartmannWorst(4,:)==0))=-Inf;
HartmannBest(5,find(HartmannBest(5,:)==0))=-Inf;
HartmannWorst(5,find(HartmannWorst(5,:)==0))=-Inf;
HartmannBest(6,find(HartmannBest(6,:)==0))=-Inf;
HartmannWorst(6,find(HartmannWorst(6,:)==0))=-Inf;
HartmannBest(7,find(HartmannBest(7,:)==0))=-Inf;
HartmannWorst(7,find(HartmannWorst(7,:)==0))=-Inf;
HartmannBest(8,find(HartmannBest(8,:)==0))=-Inf;
HartmannWorst(8,find(HartmannWorst(8,:)==0))=-Inf;
HartmannBest(9,find(HartmannBest(9,:)==0))=-Inf;
HartmannWorst(9,find(HartmannWorst(9,:)==0))=-Inf;
HartmannBest(10,find(HartmannBest(10,:)==0))=-Inf;
HartmannWorst(10,find(HartmannWorst(10,:)==0))=-Inf;
HartmannBest(11,find(HartmannBest(11,:)==0))=-Inf;
HartmannWorst(11,find(HartmannWorst(11,:)==0))=-Inf;
HartmannBest(12,find(HartmannBest(12,:)==0))=-Inf;
HartmannWorst(12,find(HartmannWorst(12,:)==0))=-Inf;
HartmannBest(13,find(HartmannBest(13,:)==0))=-Inf;
HartmannWorst(13,find(HartmannWorst(13,:)==0))=-Inf;
HartmannBest(14,find(HartmannBest(14,:)==0))=-Inf;
HartmannWorst(14,find(HartmannWorst(14,:)==0))=-Inf;
HartmannBest(15,find(HartmannBest(15,:)==0))=-Inf;
HartmannWorst(15,find(HartmannWorst(15,:)==0))=-Inf;
HartmannBest(16,find(HartmannBest(16,:)==0))=-Inf;
HartmannWorst(16,find(HartmannWorst(16,:)==0))=-Inf;
HartmannBest(17,find(HartmannBest(17,:)==0))=-Inf;
HartmannWorst(17,find(HartmannWorst(17,:)==0))=-Inf;
HartmannBest(18,find(HartmannBest(18,:)==0))=-Inf;
HartmannWorst(18,find(HartmannWorst(18,:)==0))=-Inf;



fbest=figure('Name','Hartmann');
hold on;
plot((HartmannBest(1,:)),'Color',colors(1,:))
plot((HartmannBest(2,:)),'Color',colors(2,:))
plot((HartmannBest(3,:)),'Color',colors(3,:))
plot((HartmannBest(4,:)),'Color',colors(4,:))
plot((HartmannBest(5,:)),'Color',colors(5,:))
plot((HartmannBest(6,:)),'Color',colors(6,:))
plot((HartmannBest(7,:)),'Color',colors(7,:))
plot((HartmannBest(8,:)),'Color',colors(8,:))
plot((HartmannBest(9,:)),'Color',colors(9,:))
plot((HartmannBest(10,:)),'Color',colors(10,:))
plot((HartmannBest(11,:)),'Color',colors(11,:))
plot((HartmannBest(12,:)),'Color',colors(12,:))
plot((HartmannBest(13,:)),'Color',colors(13,:))
plot((HartmannBest(14,:)),'Color',colors(14,:))
plot((HartmannBest(15,:)),'Color',colors(15,:))
plot((HartmannBest(16,:)),'Color',colors(16,:))
plot((HartmannBest(17,:)),'Color',colors(17,:))
plot((HartmannBest(18,:)),'LineWidth',2,'Color',colors(18,:))
plot((HartmannBest(18,:)),'Color',colors(18,:))
legend(methods);
title('Hartmann');
xlabel('Generace (g)');
ylabel('Fitness f(x)')

print('figures/HartmannBest.eps','-depsc2');

fworst=figure('Name','Hartmann');
hold on;
plot((HartmannWorst(1,:)),'Color',colors(1,:))
plot((HartmannWorst(2,:)),'Color',colors(2,:))
plot((HartmannWorst(3,:)),'Color',colors(3,:))
plot((HartmannWorst(4,:)),'Color',colors(4,:))
plot((HartmannWorst(5,:)),'Color',colors(5,:))
plot((HartmannWorst(6,:)),'Color',colors(6,:))
plot((HartmannWorst(7,:)),'Color',colors(7,:))
plot((HartmannWorst(8,:)),'Color',colors(8,:))
plot((HartmannWorst(9,:)),'Color',colors(9,:))
plot((HartmannWorst(10,:)),'Color',colors(10,:))
plot((HartmannWorst(11,:)),'Color',colors(11,:))
plot((HartmannWorst(12,:)),'Color',colors(12,:))
plot((HartmannWorst(13,:)),'Color',colors(13,:))
plot((HartmannWorst(14,:)),'Color',colors(14,:))
plot((HartmannWorst(15,:)),'Color',colors(15,:))
plot((HartmannWorst(16,:)),'Color',colors(16,:))
plot((HartmannWorst(17,:)),'Color',colors(17,:))
plot((HartmannWorst(18,:)),'LineWidth',2,'Color',colors(18,:))
plot((HartmannWorst(18,:)),'Color',colors(18,:))
legend(methods);
title('Hartmann');
xlabel('Generace (g)');
ylabel('Fitness f(x)')

print('figures/HartmannWorst.eps','-depsc2');


close all;
